1. Field of the Invention
Embodiments of the present invention relate to browser plug-ins.
2. Related Art
A browser is a software application that retrieves content and enables a user to interact with that content. In an example, a browser may retrieve content across one or more networks, such as the Internet. Types of browsers include the INTERNET EXPLORER, SAFARI, OPERA, and FIREFOX browsers. The content may include, for example, a web page, application, document, text, video, multimedia content, or any combination thereof. While the browser itself may be able to interpret some types of content, other types may require use of a specialized plug-in.
An application may access a plug-in to add features not built into the application itself. As mentioned earlier, a browser may access a plug-in to interpret content that it could not interpret on its own. For a browser to access the plug-in, the plug-in may implement a specified interface understood by the browser. Examples of plug-in interfaces include ActiveX, used by the INTERNET EXPLORER browser, and Netscape Plug-in Application Programming Interface (NPAPI) used by the SAFARI, OPERA, and FIREFOX browsers.
While using plug-ins can add functionality to a browser, using plug-ins can also cause stability and security issues. Plug-ins are often developed by third-parties and may not be subject to the same quality standards as a browser. For this reason, a plug-in may be more likely to crash than the browser. Yet, a crash in plug-in may bring down the entire browser. Further, plug-ins may be delivered in a machine code form that has direct access to system resources. If a plug-in includes malicious code, using the plug-in may cause damage to a computer system.
Systems and methods are needed that enable browsers to access plug-ins with increased security and stability.